package com.topscomm.file;

import java.io.Serializable;
import java.util.concurrent.TimeUnit;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * 文件附加信息
 *
 * @description:
 * @author: donghang
 * @date: 2021年3月13日下午11:30:23
 * @modify:
 */
@Getter
@Setter
@ToString
public class FileInfoDTO implements Serializable {
	/**
	 * 文件大小
	 */
	private Long fileSize;
	/**
	 * 块大小
	 */
	private Long blockSize;
	/**
	 * 块总数
	 */
	private int totalBlockCount;
	/**
	 * 文件名
	 */
	private String fileName;
	/**
	 * 文件路径
	 */
	private String fileDirPath;
	/**
	 * minio桶名称
	 */
	private String bucketName;
	/**
	 * 文件id,md5或uuid
	 */
	private String fileId;
	/**
	 * 存储类型
	 */
	private String storageType;
	/**
	 * 本地文件路径
	 */
	private String locateFilePath;

	/**
	 * 签名过期失效时间
	 */
	private int expireTime;

	/**
	 * 签名过期失效时间单位
	 */
	private TimeUnit timeUnit;

	/**
	 * 得到文件路径
	 *
	 * @description:
	 * @return
	 * @author: donghang
	 * @date: 2021年3月18日上午9:19:22
	 * @modify:
	 */
	public String getRemoteFilePath() {
		return this.fileDirPath + "/" + this.fileName;
	}
}
